﻿using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Wq.MeetingService.Models.Enum;

namespace Wq.MeetingService.Entities
{
    [Tenant("meeting")]
    [SugarTable("Wq_GuestRoom")]
    public class GuestRoomInfo
    {
        /// <summary>
        /// Id   
        /// </summary>
        [SugarColumn(ColumnDescription = "Id", IsPrimaryKey = true, IsIdentity = true)]
        public long Id { get; set; }

        /// <summary>
        /// 场地Id
        /// </summary>
        [SugarColumn(ColumnDescription = "场地Id")]
        public int VenueId { get; set; }

        /// <summary>
        /// 名称
        /// </summary>
        [SugarColumn(ColumnDescription = "客房名称")]
        public string Name { get; set; }

        /// <summary>
        /// 床类型
        /// </summary>
        [SugarColumn(ColumnDescription = "床类型")]
        public BedType? BedType { get; set; }

        /// <summary>
        /// 上网方式
        /// </summary>
        [SugarColumn(ColumnDescription = "上网方式")]
        public InternetType? InternetType { get; set; }

        /// <summary>
        /// 窗户类型
        /// </summary>
        [SugarColumn(ColumnDescription = "窗户类型")]
        public WindowType? WindowType { get; set; }

        /// <summary>
        /// 价格
        /// </summary>
        [SugarColumn(ColumnDescription = "价格", ColumnDataType = "decimal(10,2)")]
        public decimal Price { get; set; }
        /// <summary>
        /// 数量
        /// </summary>
        [SugarColumn(ColumnDescription = "数量")]
        public int Quantity { get; set; }

        /// <summary>
        /// 排序序号
        /// </summary>
        [SugarColumn(ColumnDescription = "排序序号")]
        public int Sequence { get; set; }

        /// <summary>
        /// 面积
        /// </summary>
        [SugarColumn(ColumnDescription = "面积", ColumnDataType = "decimal(10,2)")]
        public decimal Area { get; set; }

        /// <summary>
        /// 最低楼层
        /// </summary>
        [SugarColumn(ColumnDescription = "最低楼层")]
        public int MinFoor { get; set; }

        /// <summary>
        /// 最高楼层
        /// </summary>
        [SugarColumn(ColumnDescription = "最高楼层")]
        public int MaxFoor { get; set; }

        /// <summary>
        /// 图片
        /// </summary>
        [Navigate(NavigateType.OneToMany, nameof(MeetingThumbnailInfo.SourceRoomId))]
        public List<MeetingThumbnailInfo> Thumbnails { get; set; }
    }
}
